C++Data StructuresAlgorithmsCompetitive ProgrammingJavaPythonMicroprocessorsGraph TheoryComputer System ArchitectureMachine LearningArtificial IntelligenceData Structures in PythonJavascriptMySQLAndroid DevelopmentAlgorithms in PythonCoding InterviewData ScienceData Structures in JavaObject Oriented DesignLinked ListBinary Trees

Data Structures in Java

[1.0] Introduction to Data Structures

[2.0] Arrays in Java

[2.1] Reverse Array in Java

[2.2] Rotate Array in Java

[3.0] Linked List in Java

[3.1] Insert node in Linked List in Java

[3.2] Insert Node at Specific Position in Linked List

[3.3] Deletion in Linked List

[4.1] Stacks in Java

[5.1] Queues in Java(using Arrays)

[5.2] Queue using Linked List

[6.1] Introduction to Graphs in Java

[6.2] Breadth First Search in Java

[1.0] Data Structures in Java (Introduction)

Data: Integers, Float, Strings, Characters etc.

  • Data can be stored in two ways in computers:

1) RAM: Random Access Memory -> CPU directly accesses RAM as it is faster to access

2) Hard Drive/ SSD: -> Data is stored permanently inside the hard drive.

Program: Set of instructions that CPU accesses in Main Memory.

RAM is a continous block of storage and each block is assigned a memory address.

Why we need Data Structures?

Since CPU is a very important resource and it consumes some time to access main memory, we need to store the data efficiently.

Example: Dictionary used alphabetical order to store words which makes it easier for us to search for the word and its meaning among millions of words.

Different structures provide different advantages in various applications.

We will study them in the upcoming modules.

How to structure data in memory?

Since data is stored in RAM and CPU needs to access it we can use memory referencing to connect the data and obtain any structure we desire.